package com.meituan.sdk.model.tuangouNg.coupon.couponQuerySetMealListV1;

import com.meituan.sdk.annotations.ApiMeta;
import java.util.List;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import com.meituan.sdk.internal.utils.JsonUtil;
import com.google.gson.annotations.SerializedName;
import com.meituan.sdk.MeituanResponse;
import com.meituan.sdk.MeituanRequest;

/**
* 门店套餐映射；相比于coupon_query_set_meal_list拆分了隐藏状态和售卖状态
* This file was automatically generated.
*/
@ApiMeta(
    path = "/tuangou/ng/coupon/querySetMealListV1",
    businessId = 1,
    apiVersion = "10080",
    apiName = "coupon_query_set_meal_list_v1",
    needAuth = true
)
public class CouponQuerySetMealListV1Request implements MeituanRequest<CouponQuerySetMealListV1Response> {
    /**
    * <p data-diff-id="ct-diff-id-03a9ad5b-2a1f-4bc7-83e7-006705988c64">售卖状态；不传返回全部</p><table data-borderwidth="1" data-diff-id="ct-diff-id-2cbd4c83-efb5-4459-b7f2-27517f4ed9a1"><tbody><tr data-row-diff-id="ct-tr-diff-id-af784165-207f-4981-9689-6113827b3363"><th data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-dc27294e-aaaf-4539-8ce7-94e232260ca4"><p data-diff-id="ct-diff-id-56cffe5a-627b-4236-b26f-65aa15cc52c0">状态值</p></th><th data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-f29e5bf2-d820-4db1-8de5-6f1c1a7b170e"><p data-diff-id="ct-diff-id-e38aeded-c9fe-4a91-a1af-ec70e5a91786">状态描述</p></th></tr><tr data-row-diff-id="ct-tr-diff-id-44941954-5c18-4991-b3bd-044168ca890c"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-3dc50c82-f0a6-4073-9587-f9c9bacae1f4"><p data-diff-id="ct-diff-id-a3a90a87-e61c-4bef-babf-f8f4c83465be">0</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-4381d733-4fa9-407e-b25b-7d7dfddfc99e"><p data-diff-id="ct-diff-id-489fef2d-5bb6-416d-8689-cad4ec799418">结束售卖的deal</p></td></tr><tr data-row-diff-id="ct-tr-diff-id-f01d7931-35a4-49b6-8cf5-6f19c677d3f7"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-afc30eeb-e71a-40a3-a7ef-760d39b50510"><p data-diff-id="ct-diff-id-e6758e22-09df-476f-809e-6879a21f3ec6">1</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-4d8b6c9f-0759-4a08-9cba-caec75c161cd"><p data-diff-id="ct-diff-id-788df81a-0fba-4432-bc42-ee16929e6154">正在售卖的deal</p></td></tr><tr data-row-diff-id="ct-tr-diff-id-95be0395-ae37-4712-bd13-571336bf644b"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-cd6747c3-542e-470f-8d85-1b0413ed96f9"><p data-diff-id="ct-diff-id-56f55b78-338d-4b0d-b551-d0626af5b525">4</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-dcb49455-15e3-4187-ba99-432ead708d77"><p data-diff-id="ct-diff-id-0bc1cfeb-3bdf-4ee6-84c8-282c03efb91b">未开始售卖的deal</p></td></tr></tbody></table>
    */
    @SerializedName("saleStatus")
    private Integer saleStatus;
    /**
    * <p data-diff-id="ct-diff-id-8be55162-8c52-4f69-be6f-b689116d756a">隐藏状态 ；不传默认查询非隐藏单(渠道单)</p><table data-borderwidth="1" data-diff-id="ct-diff-id-ccd3ddfa-508f-43de-8a82-51e92d8c85d4"><tbody><tr data-row-diff-id="db74e474-2e2e-4c77-b942-abba84a39c50"><th data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-db6f9168-3b7d-4a3c-91d9-63758c1f6d7c"><p data-diff-id="ct-diff-id-2d5a237a-5ed9-4724-ba97-d2ff33aec047">状态值</p></th><th data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-f00d701b-0c8b-4fa9-8d85-86d39cf6803b"><p data-diff-id="ct-diff-id-5cf2576b-35a1-45b4-9c1f-650e5e64c76b">状态描述</p></th></tr><tr data-row-diff-id="e45826ff-3566-4600-a60a-31235b28d548"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-3af0e22b-36e8-4240-913f-670f3f0260a6"><p data-diff-id="ct-diff-id-8bd57a63-e048-49bf-9ac2-0877ee881bcb">-1</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-65f44c48-f4d4-4118-b598-207fe4b20d18"><p data-diff-id="ct-diff-id-0ef6ba71-c27d-4394-b341-c75dd0b9b8b7">所有deal</p></td></tr><tr data-row-diff-id="489dc315-2920-483c-b7be-de8bdb56f4f3"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-e42428b9-eaab-4e0b-ae54-4784aaffb539"><p data-diff-id="ct-diff-id-da97db75-9be3-431f-9150-8ecaaee9bb44">0</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-06956409-2cb4-451a-8220-702e0092173e"><p data-diff-id="ct-diff-id-669b9fdc-39a0-4bdd-af5a-324417176770">非隐藏单</p></td></tr><tr data-row-diff-id="e7a31ef1-e660-469a-90f0-4313088b9b81"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-383e5b73-4d31-4dfa-82b3-a9976a5d3128"><p data-diff-id="ct-diff-id-b75e02e3-ce4c-4b96-bb84-4e004cb1a553">1</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-6782fdb7-7805-4a1e-8fc0-856f54984188"><p data-diff-id="ct-diff-id-d3023420-17f3-447b-9e74-b1cbd9de5bfb">隐藏单</p></td></tr></tbody></table>
    */
    @SerializedName("hideStatus")
    private Integer hideStatus;
    /**
    * <p data-diff-id="ct-diff-id-567f7c23-ec61-416b-82bb-ff7cece01aec">分页偏移量，默认0</p>
    */
    @SerializedName("offset")
    private Long offset;
    /**
    * <p data-diff-id="ct-diff-id-f3b121d5-22d0-4baa-98f9-f65cffa256e6">分页大小，默认一个门店只返回20，最多可配置100</p>
    */
    @SerializedName("limit")
    private Long limit;
    /**
    * <p data-diff-id="ct-diff-id-947494c9-3637-4e75-9ef8-a3fa2aae3ab5">不传默认查询门店下展示的商品。</p><table data-borderwidth="1" data-diff-id="ct-diff-id-53f3639c-1e74-4444-9390-0b7c22e9091a"><tbody><tr data-row-diff-id="db74e474-2e2e-4c77-b942-abba84a39c50"><th data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-9df75100-c41b-4888-a2e7-fcd5e02893fc"><p style="text-align: inherit;" data-diff-id="ct-diff-id-8c66fc10-e867-4fe5-b046-7e79a9b72181">状态值</p></th><th data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-be4c6dae-73eb-4f8f-b769-602a29f4ee6c"><p style="text-align: inherit;" data-diff-id="ct-diff-id-40e4d28e-614e-4abf-988d-fbaced292036">状态描述</p></th></tr><tr data-row-diff-id="e45826ff-3566-4600-a60a-31235b28d548"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-c7fb423b-3713-4e82-9f01-bc4441c527f0"><p data-diff-id="ct-diff-id-4070cf1a-b37b-4c64-a1b2-2211c40aa305">-1</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-1da81a86-1999-43dc-8a3e-e791f962288d"><p data-diff-id="ct-diff-id-203e4ff8-8165-4110-8c07-1fb28c0d265d">查询所有deal</p></td></tr><tr data-row-diff-id="489dc315-2920-483c-b7be-de8bdb56f4f3"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-d5ae23e5-dbc2-448c-88b9-16b0123c03a9"><p data-diff-id="ct-diff-id-02ea780a-9c73-4ed7-b346-25b462aa5e2c">1或不传</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-96df43b8-984a-4d09-9371-b58b395dd6d0"><p data-diff-id="ct-diff-id-022fc4ce-732f-4c8c-bd53-9ae46fecd015">查询门店下可见的deal</p></td></tr><tr data-row-diff-id="e7a31ef1-e660-469a-90f0-4313088b9b81"><td data-colwidth="120" width="120" data-cell-diff-id="ct-cell-diff-id-5319a5f0-4f3f-4e08-8ec9-0fe2f6828d00"><p data-diff-id="ct-diff-id-7cdf3e74-6f55-4a71-b278-b2e0500a3d64">0</p></td><td data-colwidth="228" width="228" data-cell-diff-id="ct-cell-diff-id-c2ac150e-ed79-45f5-9401-c20c4157f884"><p data-diff-id="ct-diff-id-c132863f-a80a-4efe-80bb-e02d327dd38c">查询门店下隐藏的deal</p></td></tr></tbody></table><p data-diff-id="ct-diff-id-40078141-d7d7-4f2b-93ce-c874945fc20a"></p>
    */
    @SerializedName("poiShowStatus")
    private Integer poiShowStatus;

    public Integer getSaleStatus() {
        return saleStatus;
    }
    public void setSaleStatus(Integer saleStatus) {
        this.saleStatus = saleStatus;
    }
    public Integer getHideStatus() {
        return hideStatus;
    }
    public void setHideStatus(Integer hideStatus) {
        this.hideStatus = hideStatus;
    }
    public Long getOffset() {
        return offset;
    }
    public void setOffset(Long offset) {
        this.offset = offset;
    }
    public Long getLimit() {
        return limit;
    }
    public void setLimit(Long limit) {
        this.limit = limit;
    }
    public Integer getPoiShowStatus() {
        return poiShowStatus;
    }
    public void setPoiShowStatus(Integer poiShowStatus) {
        this.poiShowStatus = poiShowStatus;
    }


    @Override
    public MeituanResponse<CouponQuerySetMealListV1Response> deserializeResponse(String response) {
        Type type = new TypeToken<MeituanResponse<CouponQuerySetMealListV1Response>>(){}.getType();
        return JsonUtil.fromJson(response, type);
    }
    @Override
    public String serializeToJson() {
        return JsonUtil.toJson(this);
    }


    @Override
    public String toString() {
        return "CouponQuerySetMealListV1Request{" + "saleStatus=" + saleStatus + "," + "hideStatus=" + hideStatus + "," + "offset=" + offset + "," + "limit=" + limit + "," + "poiShowStatus=" + poiShowStatus + "}";
    }
}
